home *** CD-ROM | disk | FTP | other *** search
- #Comic_PosX = 0
- #Comic_PosY = 92
-
- Global Comic_GFX.l ; Grafik Refernz fⁿr den Comic
- Global Comic_SFX.l ; Sound Referenz fⁿr den Comic
- Global Comic_NextGFX.l ; Welche Referenz wird als nΣchste benutzt
- Dim Comic_GFXInNeed.l(1) ; Ist die Referenz im Speicher?
- Global Comic_SFXInNeed.l ; Ist der Sound im Speicher
- Global Global_ComicWavTime.l ; Zeit die die Aktuelle Wav Datei Spielt!
-
- Procedure Load_ComicGFX()
- Comic_GFXInNeed.l(Comic_NextGFX) = 1 ; Die Grafik ist geladen!
- CatchSprite(Comic_GFX.l+Comic_NextGFX.l,NextPackFile(),#PB_Sprite_Texture)
- CreateSprite3D(Comic_GFX.l+Comic_NextGFX.l,Comic_GFX.l+Comic_NextGFX.l)
- TransformSprite3D(Comic_GFX.l+Comic_NextGFX.l,0,0,1023,0,1023,576,0,576)
- Comic_NextGFX.l = 1 - Comic_NextGFX.l
- EndProcedure
-
- Procedure Load_ComicSFX()
- If Comic_SFXInNeed = 1
- FreeSound(Comic_SFX.l)
- EndIf
- Comic_SFXInNeed = 1
- a.l = NextPackFile()
- Temp.f = PackFileSize() - 44
- Temp.f = Temp.f / 88.2
- Global_ComicWavTime.l = Temp.f
- CatchSound(Comic_SFX.l,a.l)
- EndProcedure
-
- Procedure Fade_Comic(Typus.l)
- Temp.l = 1 - Comic_NextGFX.l
- If Typus = 1 ; Einfaden
- Timer.l = GetTickCount_() ; 83 Frames = 1106
- Repeat
- Value.l = GetTickCount_() - Timer.l
- x = 5 + Value.l * 250 / 1106
- If x > 255: x = 255: EndIf
- ClearScreen(0,0,0)
- Start3D()
- DisplaySprite3D(Comic_GFX.l+Temp,#Comic_PosX,#Comic_PosY,x)
- Stop3D()
- StartDrawing(ScreenOutput())
- Line(0,#Comic_PosY,1024,0,0)
- StopDrawing()
- FlipBuffers()
- Until x = 255
- ElseIf Typus = 2 ; ▄berfaden
- Timer.l = GetTickCount_() ; 62,5 Frames = 833 ms
- Repeat
- Value.l = GetTickCount_() - Timer.l
- x = 5 + Value.l * 250 / 833
- If x > 255: x = 255: EndIf
- ClearScreen(0,0,0)
- Start3D()
- DisplaySprite3D(Comic_GFX.l+Comic_NextGFX.l,#Comic_PosX,#Comic_PosY,255-x)
- DisplaySprite3D(Comic_GFX.l+Temp,#Comic_PosX,#Comic_PosY,x)
- Stop3D()
- StartDrawing(ScreenOutput())
- Line(0,#Comic_PosY,1024,0,0)
- StopDrawing()
- FlipBuffers()
- Until x = 255
- ElseIf Typus = 3 ; Ausfaden
- Timer.l = GetTickCount_() ; 50 Frames = 666 ms
- Repeat
- Value.l = GetTickCount_() - Timer.l
- x = 255 - Value.l * 250 / 666
- If x < 5: x = 5: EndIf
- ClearScreen(0,0,0)
- Start3D()
- DisplaySprite3D(Comic_GFX.l+Temp,#Comic_PosX,#Comic_PosY,x)
- Stop3D()
- StartDrawing(ScreenOutput())
- Line(0,#Comic_PosY,1024,0,0)
- StopDrawing()
- FlipBuffers()
- Until x = 5
- EndIf
- EndProcedure
-
- Procedure Play_ComicSFX(Typus.l)
- ; Typus: 1=Spielen und weiterlaufen lassen, 2=Spielen bis Ende und dann weiter, 3=Wiederholt spielen
- If Typus = 1
- PlaySound(Comic_SFX.l,0)
- ElseIf Typus = 2
- PlaySound(Comic_SFX.l,0)
- ; ? ? ?
- ElseIf Typus = 3
- PlaySound(Comic_SFX.l,1)
- EndIf
- EndProcedure
-
- ; Eine Entscheidung im Comic machen!
- Procedure Comic_Entscheidung(Nr.l)
- PlaySound(Herz_SFX.l,1)
- Temp.l = 1 - Comic_NextGFX.l
- Filename.s = "Data\Speech0\Comic\Entscheidung" + Str(Nr.l) + ".dat"
- Old_Entscheidung.l = 0
- If ReadFile(0,Filename.s) = 0
- Error_Msg(Filename.s + " not found")
- EndIf
- String1.s = ReadString()
- String2.s = ReadString()
- If Nr.l = 22 And ObjektChar_Att_Typus(1) > 2; Wenn man eine Frau ist
- String2.s = ReadString()
- EndIf
- If Nr = 1
- If ObjektChar_Att_Typus(1) = 1
- OpenPack("GFX\Comic\Entscheidung1.pak")
- ElseIf ObjektChar_Att_Typus(1) = 2 Or ObjektChar_Att_Typus(1) = 4
- OpenPack("GFX\Comic\Entscheidung2.pak")
- ElseIf ObjektChar_Att_Typus(1) = 3
- OpenPack("GFX\Comic\Entscheidung3.pak")
- EndIf
- Else
- OpenPack("GFX\Comic\Entscheidung" + Str(Nr) + ".pak")
- EndIf
- CatchSprite(Comic_GFX,NextPackFile(),0)
- ClosePack()
-
- Repeat
- ClearScreen(0,0,0)
- Start3D()
- DisplayTransparentSprite(Comic_GFX.l,0,19)
- Stop3D()
- ; StartDrawing(ScreenOutput())
- ; Line(0,#Comic_PosY,1024,0,0)
- ; StopDrawing()
- Old_Entscheidung.l = Old_Entscheidung.l * -1
-
- If MausY > 688 And MausY < 688+20
- SchreibeChar(String1.s,512,690,1,2)
- If Maus_Taste(1) = 2
- Entscheidung = 1
- EndIf
- If Old_Entscheidung.l <> -1
- Play_Sound(#SFX_Beep1,-1,-1,0,50,0)
- EndIf
- Old_Entscheidung.l = 1
- Else
- SchreibeChar(String1.s,512,690,1,1)
- EndIf
-
- If MausY > 718 And MausY < 718+20
- SchreibeChar(String2.s,512,720,1,2)
- If Maus_Taste(1) = 2
- Entscheidung = 2
- EndIf
- If Old_Entscheidung.l <> -2
- Play_Sound(#SFX_Beep1,-1,-1,0,50,0)
- EndIf
- Old_Entscheidung.l = 2
- Else
- SchreibeChar(String2.s,512,720,1,1)
- EndIf
- ; Input an Mouse
- If Old_Entscheidung.l < 1
- Old_Entscheidung.l = 0
- EndIf
-
- ExamineKeyboard()
- ExamineMouse()
- MausX = MouseX()
- MausY = MouseY()
- Mausold = Maus_Taste(1)
- Maus_Taste(1) = MouseButton(Option(7))
- If Maus_Taste(1) > 0 And Mausold = 0
- Maus_Taste(1) = 2
- ElseIf Maus_Taste(1) = 0 And Mausold > 0
- Maus_Taste(1) = -1
- EndIf
- a.l = Interface_GFX(1)
- d.l = Interface_Anim.f(1)
- d.l = d.l / 4
- a.l = a.l + d.l + 1
- DisplayTransparentSprite(a.l, MausX, MausY)
- Interface_Anim.f(1) + 0.5
- If Interface_Anim.f(1) > 23+12
- Interface_Anim.f(1) = 0
- EndIf
- ; Ende Input und Maus
- FlipBuffers()
- If Keyboard_Released(2)
- Entscheidung = 1
- ElseIf Keyboard_Released(3)
- Entscheidung = 2
- EndIf
- Until Entscheidung > 0
- StopSound(Herz_SFX.l)
- Play_Sound(#SFX_Click1,-1,-1,0,50,0)
- FreeSprite(Comic_GFX)
- ProcedureReturn Entscheidung
- EndProcedure
- ; Ende Comic_Entscheidung(Nr.l)
-
- ; Zeigt Comic Nr 1 an
- Procedure Display_Comic1()
- ; Sound Loop 1
- ; 1. Bild einfaden, Matrix wird gezeigt
- Play_Movie("Movie\Comic01.dat",59)
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(1): Play_ComicSFX(1): Delay(1600)
- ; 2. Bilder umfaden
- ;Load_ComicGFX(): Fade_Comic(2): Delay(1873)
- ; 3. Bilder umfaden, playsound c1-03
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(697)
- ; 4. Bilder umfaden, playsound c1-04
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;Fade_Comic(3) ; Ausfaden
- ProcedureReturn 0; Keine Entscheidung!
- EndProcedure
- ; Ende Display_Comic1()
-
- ; Zeigt Comic Nr 2 an
- Procedure Display_Comic2()
- ; Sound Loop 1
- ; 1. Bild einfaden, GefΣngniss Tⁿr geht aus (Laserschranke)
- If ObjektChar_Att_Typus(1) = 1
- Play_Movie("Movie\Comic02a.dat",21)
- ElseIf ObjektChar_Att_Typus(1) = 2 Or ObjektChar_Att_Typus(1) = 4
- Play_Movie("Movie\Comic03a.dat",21)
- ElseIf ObjektChar_Att_Typus(1) = 3
- Play_Movie("Movie\Comic04a.dat",21)
- EndIf
-
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(1): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;; 2. Bilder umfaden, playSund c2-02
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; 3. Bilder umfaden, playsound c2-03
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; 4. Bilder umfaden, playsound c2-04
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; -> Entscheidung
- If ObjektChar_Att_Typus(1) = 4
- Entscheidung = 1
- Else
- Entscheidung = Comic_Entscheidung(1)
- EndIf
-
- If Entscheidung = 1 ; Kanal
- If ObjektChar_Att_Typus(1) = 1
- Play_Movie("Movie\Comic02c.dat",21)
- ElseIf ObjektChar_Att_Typus(1) = 2 Or ObjektChar_Att_Typus(1) = 4
- Play_Movie("Movie\Comic03c.dat",19)
- ElseIf ObjektChar_Att_Typus(1) = 3
- Play_Movie("Movie\Comic04c.dat",22)
- EndIf
- ; 5. Bilder umfaden, PlaySound c2-05
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; 6. Bilder umfaden, Playsound c2-06
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ElseIf Entscheidung = 2 ; Dach
- If ObjektChar_Att_Typus(1) = 1
- Play_Movie("Movie\Comic02b.dat",10)
- ElseIf ObjektChar_Att_Typus(1) = 2 Or ObjektChar_Att_Typus(1) = 4
- Play_Movie("Movie\Comic03b.dat",09)
- ElseIf ObjektChar_Att_Typus(1) = 3
- Play_Movie("Movie\Comic04b.dat",09)
- EndIf
- EndIf
-
- ; For x = 1 To 4
- ; a.l = NextPackFile()
- ; Next
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;EndIf
- ;Fade_Comic(3)
- ProcedureReturn Entscheidung
- EndProcedure
- ; Ende Display_Comic2()
-
- ; zeigt Comic nr. 5 an
- Procedure Display_Comic5()
- ; Sound Loop 1
- If ObjektChar_Att_Typus(1) = 1
- Play_Movie("Movie\Comic05.dat",18)
- ElseIf ObjektChar_Att_Typus(1) = 2 Or ObjektChar_Att_Typus(1) = 4
- Play_Movie("Movie\Comic06.dat",18)
- ElseIf ObjektChar_Att_Typus(1) = 3
- Play_Movie("Movie\Comic07.dat",18)
- EndIf
-
- ; 1. Bild einfaden, Matrix wird gezeigt
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(1): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; 2. Bilder umfaden
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; 3. Bilder umfaden, playsound c1-03
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; 4. Bilder umfaden, playsound c1-04
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;Fade_Comic(3) ; Ausfaden
- ProcedureReturn 0; Keine Entscheidung!
- EndProcedure
- ; Ende Display_Comic5()
-
- ; Zeigt Comic Nr 8 an
- Procedure Display_Comic8()
- ; Sound Loop 1
- ; 1. Bild einfaden, Wissenschaftler tot
- Play_Movie("Movie\Comic08a.dat",17) ; Start
-
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(1): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; 2. Bilder umfaden, Ich lebe noch, und nun?
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; 3. Bilder umfaden, nur eine L÷sung!
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; -> Entscheidung
- Entscheidung = Comic_Entscheidung(8)
- If Entscheidung = 1 ; Retten
- ; 4-8
- Play_Movie("Movie\Comic08b.dat",55) ; Retten
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- Else ; If Entscheidung = 2 ; t÷ten
- Play_Movie("Movie\Comic08c.dat",7) ; Retten
- ; For x = 1 To 5
- ; For y = 1 To 2
- ; a.l = NextPackFile()
- ; Next
- ; Next
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- EndIf
-
- ;Fade_Comic(3)
- ProcedureReturn Entscheidung
- EndProcedure
- ; Ende Display_Comic8()
-
- ; Zeigt Comic Nr 9 an
- Procedure Display_Comic9()
- ; Sound Loop 1
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(1): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- Play_Movie("Movie\Comic09a.dat",19) ; Start
-
- ; -> Entscheidung
- Entscheidung = Comic_Entscheidung(9)
- If Entscheidung = 1 ; T÷ten!
- ; 4-8
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- Play_Movie("Movie\Comic09b.dat",17) ; Start
-
- ElseIf Entscheidung = 2 ; Leben lassen
- Play_Movie("Movie\Comic09c.dat",17) ; Start
- ; For x = 1 To 2
- ; For y = 1 To 2
- ; a.l = NextPackFile()
- ; Next
- ; Next
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime+500)
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- EndIf
-
- Fade_Comic(3)
- ProcedureReturn Entscheidung
- EndProcedure
- ; Ende Display_Comic9()
-
- ; Zeigt Comic Nr 10 an
- Procedure Display_Comic10()
- ; Sound Loop 1
- If ObjektChar_Att_Typus(1) = 1
- Play_Movie("Movie\Comic10.dat",68)
- ElseIf ObjektChar_Att_Typus(1) = 2
- Play_Movie("Movie\Comic11.dat",68)
- ElseIf ObjektChar_Att_Typus(1) = 3
- Play_Movie("Movie\Comic12.dat",68)
- ElseIf ObjektChar_Att_Typus(1) = 4
- Play_Movie("Movie\Comic13.dat",68)
- EndIf
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(1): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;For x = 1 To 9
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;Next
- ;Fade_Comic(3) ; Ausfaden
- ProcedureReturn 0; Keine Entscheidung!
- EndProcedure
- ; Ende Display_Comic10()
-
- ; Zeigt Comic Nr 14 an
- Procedure Display_Comic14()
- ; Sound Loop 1
- If ObjektChar_Att_Typus(1) = 1
- Play_Movie("Movie\Comic14.dat",21)
- ElseIf ObjektChar_Att_Typus(1) = 2
- Play_Movie("Movie\Comic15.dat",21)
- ElseIf ObjektChar_Att_Typus(1) = 3
- Play_Movie("Movie\Comic16.dat",22)
- ElseIf ObjektChar_Att_Typus(1) = 4
- Play_Movie("Movie\Comic17.dat",15)
- EndIf
-
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(1): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;For x = 1 To 3
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;Next
- ;Fade_Comic(3) ; Ausfaden
- ProcedureReturn 0; Keine Entscheidung!
- EndProcedure
- ; Ende Display_Comic14()
-
- ; Zeigt Comic Nr 18 an
- Procedure Display_Comic18()
- ; Sound Loop 1
- If ObjektChar_Att_Typus(1) = 1 Or ObjektChar_Att_Typus(1) = 3
- Play_Movie("Movie\Comic18.dat",20)
- Else
- Play_Movie("Movie\Comic19.dat",20)
- EndIf
-
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(1): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;For x = 1 To 3
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;Next
- ;Fade_Comic(3) ; Ausfaden
- ProcedureReturn 0; Keine Entscheidung!
- EndProcedure
- ; Ende Display_Comic18()
-
- ; Zeigt Comic Nr 20 an
- Procedure Display_Comic20()
- ; Sound Loop 1
- If ObjektChar_Att_Typus(1) = 1 Or ObjektChar_Att_Typus(1) = 3
- Play_Movie("Movie\Comic20.dat",29)
- Else
- Play_Movie("Movie\Comic21.dat",29)
- EndIf
-
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(1): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;If ObjektChar_Att_Typus(1) = 1 Or ObjektChar_Att_Typus(1) = 3;(John oder Vicky)
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;EndIf
-
- ;Fade_Comic(3) ; Ausfaden
- ProcedureReturn 0; Keine Entscheidung!
- EndProcedure
- ; Ende Display_Comic20()
-
- ; Zeigt Comic Nr 22 an
- Procedure Display_Comic22()
- ; Sound Loop 1
- If ObjektChar_Att_Typus(1) = 1
- Play_Movie("Movie\comic22.dat",28)
- ElseIf ObjektChar_Att_Typus(1) = 2
- Play_Movie("Movie\comic23.dat",28)
- ElseIf ObjektChar_Att_Typus(1) = 3
- Play_Movie("Movie\comic24.dat",42)
- ElseIf ObjektChar_Att_Typus(1) = 4
- Play_Movie("Movie\comic25.dat",28)
- EndIf
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(1): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;Entscheidung = Comic_Entscheidung(22)
- ;If Entscheidung = 1 ; Selbst retten
- ; For x = 1 To 4
- ; For y = 1 To 2
- ; a.l = NextPackFile()
- ; Next
- ; Next
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;ElseIf Entscheidung = 2 ; Anderen retten
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ; Load_ComicGFX(): Load_ComicSFX(): Fade_Comic(2): Play_ComicSFX(1): Delay(Global_ComicWavTime)
- ;EndIf
-
- ;Fade_Comic(3) ; Ausfaden
- ProcedureReturn 0; Keine Entscheidung!
- EndProcedure
- ; Ende Display_Comic22()
-
-
- ; Zeigt einen Comic an
- Procedure Display_Comic(Nr.l)
- StopCD_Audio()
- Global_SWMission.l = 0
-
- Global_Alarm = 0
-
- Sprite3DQuality(1)
- ;OpenPack("GFX\comic\Back.pak")
- ; CatchSound(Comic_SFX.l+1,NextPackFile())
- ; SoundVolume(Comic_SFX.l+1,75)
- ; PlaySound(Comic_SFX.l+1)
- ;ClosePack()
-
- Filename.s = "GFX\comic\comic" + Str(Nr.l) + ".pak"
- If Nr.l = 2 ; Jessicas Befreiung
- If ObjektChar_Att_Typus(1) = 2 Or ObjektChar_Att_Typus(1) = 4 ; Kenji oder Jess
- Filename.s = "GFX\comic\comic" + Str(3) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 3
- Filename.s = "GFX\comic\comic" + Str(4) + ".pak"
- EndIf
- ElseIf Nr.l = 5 ; Jason Flucht vom Dach
- If ObjektChar_Att_Typus(1) = 2 Or ObjektChar_Att_Typus(1) = 4 ; Kenji oder Jess
- Filename.s = "GFX\comic\comic" + Str(6) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 3
- Filename.s = "GFX\comic\comic" + Str(7) + ".pak"
- EndIf
- ElseIf Nr.l = 10 ; Absturz in der Wⁿste
- If ObjektChar_Att_Typus(1) = 2
- Filename.s = "GFX\comic\comic" + Str(11) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 3
- Filename.s = "GFX\comic\comic" + Str(12) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 4
- Filename.s = "GFX\comic\comic" + Str(13) + ".pak"
- EndIf
- ElseIf Nr.l = 14 ; Start in der Wⁿste
- If ObjektChar_Att_Typus(1) = 2
- Filename.s = "GFX\comic\comic" + Str(15) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 3
- Filename.s = "GFX\comic\comic" + Str(16) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 4
- Filename.s = "GFX\comic\comic" + Str(17) + ".pak"
- EndIf
- ElseIf Nr.l = 18 ; Zweite Flucht in den Kanal
- If ObjektChar_Att_Typus(1) = 2 Or ObjektChar_Att_Typus(1) = 4;(Kenji oder Jess)
- Filename.s = "GFX\comic\comic" + Str(19) + ".pak"
- EndIf
- ElseIf Nr.l = 20 ; Der Jeep
- If ObjektChar_Att_Typus(1) = 2 Or ObjektChar_Att_Typus(1) = 4;(Kenji oder Jess)
- Filename.s = "GFX\comic\comic" + Str(21) + ".pak"
- EndIf
- ElseIf Nr.l = 22 ; Opfer Szene
- Love = 0
- If MainChar_MissionStatus(5) = 4 ; Vicky nicht get÷tet
- Love = 1
- EndIf
- If ObjektChar_Att_Typus(1) = 1 And Love = 1 ; John + Vicky Love Story
- Filename.s = "GFX\comic\comic" + Str(23) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 3 And Love = 0
- Filename.s = "GFX\comic\comic" + Str(24) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 3 And Love = 1
- Filename.s = "GFX\comic\comic" + Str(25) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 2 ; Kenji
- Filename.s = "GFX\comic\comic" + Str(26) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 4 ; Jessica
- Filename.s = "GFX\comic\comic" + Str(27) + ".pak"
- EndIf
- ElseIf Nr.l = 28 ; Jones der VerrΣter
- If ObjektChar_Att_Typus(1) = 2 ; Kenji
- Filename.s = "GFX\comic\comic" + Str(29) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 3 ; Vicky
- Filename.s = "GFX\comic\comic" + Str(30) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 4 ; Jess
- Filename.s = "GFX\comic\comic" + Str(31) + ".pak"
- EndIf
- ElseIf Nr.l = 32 ; Osaki betritt den Raum
- Cyborg.l = 1
- If ObjektChar_Att_Typus(1) = 2 And Cyborg.l = 0; Kenji (Mensch)
- Filename.s = "GFX\comic\comic" + Str(33) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 2 And Cyborg.l = 1 ; Kenji (Cyborg)
- Filename.s = "GFX\comic\comic" + Str(34) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 3 ; Vicky
- Filename.s = "GFX\comic\comic" + Str(35) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 4 ; Jess
- Filename.s = "GFX\comic\comic" + Str(36) + ".pak"
- EndIf
- ElseIf Nr.l = 37 ; Osaki stirbt
- If ObjektChar_Att_Typus(1) = 2 ; Kenji
- Filename.s = "GFX\comic\comic" + Str(38) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 3 ; Vicky
- Filename.s = "GFX\comic\comic" + Str(39) + ".pak"
- ElseIf ObjektChar_Att_Typus(1) = 4 ; Jess
- Filename.s = "GFX\comic\comic" + Str(40) + ".pak"
- EndIf
- EndIf
- ;OpenPack(Filename.s)
- If Nr.l = 1: Entscheidung = Display_Comic1(): EndIf
- If Nr.l = 2: Entscheidung = Display_Comic2(): EndIf
- If Nr.l = 5: Entscheidung = Display_Comic5(): EndIf
- If Nr.l = 8: Entscheidung = Display_Comic8(): EndIf
- If Nr.l = 9: Entscheidung = Display_Comic9(): EndIf
- If Nr.l = 10: Entscheidung = Display_Comic10(): EndIf
- If Nr.l = 14: Entscheidung = Display_Comic14(): EndIf
- If Nr.l = 18: Entscheidung = Display_Comic18(): EndIf
- If Nr.l = 20: Entscheidung = Display_Comic20(): EndIf
- If Nr.l = 22: Entscheidung = Display_Comic22(): EndIf
-
- ;ClosePack()
- Start3D()
-
- If Comic_SFXInNeed = 1
- StopSound(Comic_SFX.l)
- ; StopSound(Comic_SFX.l+1)
- FreeSound(Comic_SFX.l)
- ; FreeSound(Comic_SFX.l+1)
- EndIf
- If Comic_GFXInNeed.l(0) = 1
- FreeSprite3D(Comic_GFX.l)
- FreeSprite(Comic_GFX.l)
- EndIf
- If Comic_GFXInNeed.l(1) = 1
- FreeSprite3D(Comic_GFX.l+1)
- FreeSprite(Comic_GFX.l+1)
- EndIf
- Sprite3DQuality(0)
- ProcedureReturn Entscheidung
- EndProcedure
- ; Ende Display_Comic(Nr.l)